package com.qinggeng.project.system.domain;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

@Table(name = "goods_vip")
public class GoodsVip implements Serializable {
    /**
     * ID
     */
    @Id
    @Column(name = "goods_id")
    private Long goodsId;

    /**
     * 所属分类
     */
    @Column(name = "classify_id")
    private Long classifyId;

    /**
     * 商品名称
     */
    @Column(name = "goods_name")
    private String goodsName;

    /**
     * 商品图片
     */
    @Column(name = "goods_img")
    private String goodsImg;

    /**
     * 添加商品长图
     */
    @Column(name = "goods_LongImg")
    private String goodsLongimg;

    /**
     * 商品价格
     */
    @Column(name = "goods_price")
    private BigDecimal goodsPrice;

    /**
     * 10=普通商品20=免费送30=商家补贴40=捶一捶商品 50=预购
     */
    @Column(name = "goods_type")
    private String goodsType;

    /**
     * 划线价格
     */
    @Column(name = "line_price")
    private BigDecimal linePrice;

    /**
     * 商品标签（ 10=推荐 20=优选）
     */
    @Column(name = "goods_mark")
    private String goodsMark;

    /**
     * 商品状态 10=下架 20=上架
     */
    private String status;

    /**
     * 添加类型 10=平台 20=商家
     */
    @Column(name = "add_type")
    private String addType;

    /**
     * 店铺ID
     */
    @Column(name = "shop_id")
    private Long shopId;

    /**
     * 创建者
     */
    @Column(name = "create_by")
    private String createBy;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新者
     */
    @Column(name = "update_by")
    private String updateBy;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 是否删除 10=未删除 20=已删除
     */
    @Column(name = "del_falg")
    private String delFalg;

    /**
     * 排序
     */
    private Long sort;

    /**
     * 拼团价格
     */
    @Column(name = "group_price")
    private BigDecimal groupPrice;

    /**
     * 商品属性
     */
    private String attributes;

    /**
     * 商品主类
     */
    @Column(name = "main_category")
    private Long mainCategory;

    /**
     * 商品属性名
     */
    @Column(name = "attributes_name")
    private String attributesName;

    /**
     * 补贴价格
     */
    @Column(name = "reduce_price")
    private String reducePrice;

    /**
     * 商品视频
     */
    @Column(name = "goods_video")
    private String goodsVideo;

    /**
     * 商品优惠百分比
     */
    private String proportion;

    /**
     * 商品提成百分比
     */
    private String percent;

    /**
     * 商品进价
     */
    @Column(name = "buy_price")
    private BigDecimal buyPrice;

    /**
     * 供应商
     */
    private String supplier;

    /**
     * 限购数量
     */
    @Column(name = "limit_num")
    private Integer limitNum;

    /**
     * 商品保障
     */
    private String guarantee;

    /**
     * 商品是否置顶 1置顶 0未置顶
     */
    private String top;

    /**
     * 商品提成
     */
    private BigDecimal percentage;

    /**
     * 供应商推荐描述
     */
    @Column(name = "supplier_desc")
    private String supplierDesc;

    /**
     * 批发商品ID
     */
    @Column(name = "whole_goods_id")
    private Long wholeGoodsId;

    /**
     * 会员价
     */
    @Column(name = "vip_price")
    private BigDecimal vipPrice;

    /**
     * 商品内容
     */
    @Column(name = "goods_content")
    private String goodsContent;

    /**
     * 列表图片
     */
    @Column(name = "list_img")
    private String listImg;

    private static final long serialVersionUID = 1L;

    /**
     * 获取ID
     *
     * @return goods_id - ID
     */
    public Long getGoodsId() {
        return goodsId;
    }

    /**
     * 设置ID
     *
     * @param goodsId ID
     */
    public void setGoodsId(Long goodsId) {
        this.goodsId = goodsId;
    }

    /**
     * 获取所属分类
     *
     * @return classify_id - 所属分类
     */
    public Long getClassifyId() {
        return classifyId;
    }

    /**
     * 设置所属分类
     *
     * @param classifyId 所属分类
     */
    public void setClassifyId(Long classifyId) {
        this.classifyId = classifyId;
    }

    /**
     * 获取商品名称
     *
     * @return goods_name - 商品名称
     */
    public String getGoodsName() {
        return goodsName;
    }

    /**
     * 设置商品名称
     *
     * @param goodsName 商品名称
     */
    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    /**
     * 获取商品图片
     *
     * @return goods_img - 商品图片
     */
    public String getGoodsImg() {
        return goodsImg;
    }

    /**
     * 设置商品图片
     *
     * @param goodsImg 商品图片
     */
    public void setGoodsImg(String goodsImg) {
        this.goodsImg = goodsImg;
    }

    /**
     * 获取添加商品长图
     *
     * @return goods_LongImg - 添加商品长图
     */
    public String getGoodsLongimg() {
        return goodsLongimg;
    }

    /**
     * 设置添加商品长图
     *
     * @param goodsLongimg 添加商品长图
     */
    public void setGoodsLongimg(String goodsLongimg) {
        this.goodsLongimg = goodsLongimg;
    }

    /**
     * 获取商品价格
     *
     * @return goods_price - 商品价格
     */
    public BigDecimal getGoodsPrice() {
        return goodsPrice;
    }

    /**
     * 设置商品价格
     *
     * @param goodsPrice 商品价格
     */
    public void setGoodsPrice(BigDecimal goodsPrice) {
        this.goodsPrice = goodsPrice;
    }

    /**
     * 获取10=普通商品20=免费送30=商家补贴40=捶一捶商品 50=预购
     *
     * @return goods_type - 10=普通商品20=免费送30=商家补贴40=捶一捶商品 50=预购
     */
    public String getGoodsType() {
        return goodsType;
    }

    /**
     * 设置10=普通商品20=免费送30=商家补贴40=捶一捶商品 50=预购
     *
     * @param goodsType 10=普通商品20=免费送30=商家补贴40=捶一捶商品 50=预购
     */
    public void setGoodsType(String goodsType) {
        this.goodsType = goodsType;
    }

    /**
     * 获取划线价格
     *
     * @return line_price - 划线价格
     */
    public BigDecimal getLinePrice() {
        return linePrice;
    }

    /**
     * 设置划线价格
     *
     * @param linePrice 划线价格
     */
    public void setLinePrice(BigDecimal linePrice) {
        this.linePrice = linePrice;
    }

    /**
     * 获取商品标签（ 10=推荐 20=优选）
     *
     * @return goods_mark - 商品标签（ 10=推荐 20=优选）
     */
    public String getGoodsMark() {
        return goodsMark;
    }

    /**
     * 设置商品标签（ 10=推荐 20=优选）
     *
     * @param goodsMark 商品标签（ 10=推荐 20=优选）
     */
    public void setGoodsMark(String goodsMark) {
        this.goodsMark = goodsMark;
    }

    /**
     * 获取商品状态 10=下架 20=上架
     *
     * @return status - 商品状态 10=下架 20=上架
     */
    public String getStatus() {
        return status;
    }

    /**
     * 设置商品状态 10=下架 20=上架
     *
     * @param status 商品状态 10=下架 20=上架
     */
    public void setStatus(String status) {
        this.status = status;
    }

    /**
     * 获取添加类型 10=平台 20=商家
     *
     * @return add_type - 添加类型 10=平台 20=商家
     */
    public String getAddType() {
        return addType;
    }

    /**
     * 设置添加类型 10=平台 20=商家
     *
     * @param addType 添加类型 10=平台 20=商家
     */
    public void setAddType(String addType) {
        this.addType = addType;
    }

    /**
     * 获取店铺ID
     *
     * @return shop_id - 店铺ID
     */
    public Long getShopId() {
        return shopId;
    }

    /**
     * 设置店铺ID
     *
     * @param shopId 店铺ID
     */
    public void setShopId(Long shopId) {
        this.shopId = shopId;
    }

    /**
     * 获取创建者
     *
     * @return create_by - 创建者
     */
    public String getCreateBy() {
        return createBy;
    }

    /**
     * 设置创建者
     *
     * @param createBy 创建者
     */
    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }

    /**
     * 获取创建时间
     *
     * @return create_time - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取更新者
     *
     * @return update_by - 更新者
     */
    public String getUpdateBy() {
        return updateBy;
    }

    /**
     * 设置更新者
     *
     * @param updateBy 更新者
     */
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    /**
     * 获取更新时间
     *
     * @return update_time - 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取是否删除 10=未删除 20=已删除
     *
     * @return del_falg - 是否删除 10=未删除 20=已删除
     */
    public String getDelFalg() {
        return delFalg;
    }

    /**
     * 设置是否删除 10=未删除 20=已删除
     *
     * @param delFalg 是否删除 10=未删除 20=已删除
     */
    public void setDelFalg(String delFalg) {
        this.delFalg = delFalg;
    }

    /**
     * 获取排序
     *
     * @return sort - 排序
     */
    public Long getSort() {
        return sort;
    }

    /**
     * 设置排序
     *
     * @param sort 排序
     */
    public void setSort(Long sort) {
        this.sort = sort;
    }

    /**
     * 获取拼团价格
     *
     * @return group_price - 拼团价格
     */
    public BigDecimal getGroupPrice() {
        return groupPrice;
    }

    /**
     * 设置拼团价格
     *
     * @param groupPrice 拼团价格
     */
    public void setGroupPrice(BigDecimal groupPrice) {
        this.groupPrice = groupPrice;
    }

    /**
     * 获取商品属性
     *
     * @return attributes - 商品属性
     */
    public String getAttributes() {
        return attributes;
    }

    /**
     * 设置商品属性
     *
     * @param attributes 商品属性
     */
    public void setAttributes(String attributes) {
        this.attributes = attributes;
    }

    /**
     * 获取商品主类
     *
     * @return main_category - 商品主类
     */
    public Long getMainCategory() {
        return mainCategory;
    }

    /**
     * 设置商品主类
     *
     * @param mainCategory 商品主类
     */
    public void setMainCategory(Long mainCategory) {
        this.mainCategory = mainCategory;
    }

    /**
     * 获取商品属性名
     *
     * @return attributes_name - 商品属性名
     */
    public String getAttributesName() {
        return attributesName;
    }

    /**
     * 设置商品属性名
     *
     * @param attributesName 商品属性名
     */
    public void setAttributesName(String attributesName) {
        this.attributesName = attributesName;
    }

    /**
     * 获取补贴价格
     *
     * @return reduce_price - 补贴价格
     */
    public String getReducePrice() {
        return reducePrice;
    }

    /**
     * 设置补贴价格
     *
     * @param reducePrice 补贴价格
     */
    public void setReducePrice(String reducePrice) {
        this.reducePrice = reducePrice;
    }

    /**
     * 获取商品视频
     *
     * @return goods_video - 商品视频
     */
    public String getGoodsVideo() {
        return goodsVideo;
    }

    /**
     * 设置商品视频
     *
     * @param goodsVideo 商品视频
     */
    public void setGoodsVideo(String goodsVideo) {
        this.goodsVideo = goodsVideo;
    }

    /**
     * 获取商品优惠百分比
     *
     * @return proportion - 商品优惠百分比
     */
    public String getProportion() {
        return proportion;
    }

    /**
     * 设置商品优惠百分比
     *
     * @param proportion 商品优惠百分比
     */
    public void setProportion(String proportion) {
        this.proportion = proportion;
    }

    /**
     * 获取商品提成百分比
     *
     * @return percent - 商品提成百分比
     */
    public String getPercent() {
        return percent;
    }

    /**
     * 设置商品提成百分比
     *
     * @param percent 商品提成百分比
     */
    public void setPercent(String percent) {
        this.percent = percent;
    }

    /**
     * 获取商品进价
     *
     * @return buy_price - 商品进价
     */
    public BigDecimal getBuyPrice() {
        return buyPrice;
    }

    /**
     * 设置商品进价
     *
     * @param buyPrice 商品进价
     */
    public void setBuyPrice(BigDecimal buyPrice) {
        this.buyPrice = buyPrice;
    }

    /**
     * 获取供应商
     *
     * @return supplier - 供应商
     */
    public String getSupplier() {
        return supplier;
    }

    /**
     * 设置供应商
     *
     * @param supplier 供应商
     */
    public void setSupplier(String supplier) {
        this.supplier = supplier;
    }

    /**
     * 获取限购数量
     *
     * @return limit_num - 限购数量
     */
    public Integer getLimitNum() {
        return limitNum;
    }

    /**
     * 设置限购数量
     *
     * @param limitNum 限购数量
     */
    public void setLimitNum(Integer limitNum) {
        this.limitNum = limitNum;
    }

    /**
     * 获取商品保障
     *
     * @return guarantee - 商品保障
     */
    public String getGuarantee() {
        return guarantee;
    }

    /**
     * 设置商品保障
     *
     * @param guarantee 商品保障
     */
    public void setGuarantee(String guarantee) {
        this.guarantee = guarantee;
    }

    /**
     * 获取商品是否置顶 1置顶 0未置顶
     *
     * @return top - 商品是否置顶 1置顶 0未置顶
     */
    public String getTop() {
        return top;
    }

    /**
     * 设置商品是否置顶 1置顶 0未置顶
     *
     * @param top 商品是否置顶 1置顶 0未置顶
     */
    public void setTop(String top) {
        this.top = top;
    }

    /**
     * 获取商品提成
     *
     * @return percentage - 商品提成
     */
    public BigDecimal getPercentage() {
        return percentage;
    }

    /**
     * 设置商品提成
     *
     * @param percentage 商品提成
     */
    public void setPercentage(BigDecimal percentage) {
        this.percentage = percentage;
    }

    /**
     * 获取供应商推荐描述
     *
     * @return supplier_desc - 供应商推荐描述
     */
    public String getSupplierDesc() {
        return supplierDesc;
    }

    /**
     * 设置供应商推荐描述
     *
     * @param supplierDesc 供应商推荐描述
     */
    public void setSupplierDesc(String supplierDesc) {
        this.supplierDesc = supplierDesc;
    }

    /**
     * 获取批发商品ID
     *
     * @return whole_goods_id - 批发商品ID
     */
    public Long getWholeGoodsId() {
        return wholeGoodsId;
    }

    /**
     * 设置批发商品ID
     *
     * @param wholeGoodsId 批发商品ID
     */
    public void setWholeGoodsId(Long wholeGoodsId) {
        this.wholeGoodsId = wholeGoodsId;
    }

    /**
     * 获取会员价
     *
     * @return vip_price - 会员价
     */
    public BigDecimal getVipPrice() {
        return vipPrice;
    }

    /**
     * 设置会员价
     *
     * @param vipPrice 会员价
     */
    public void setVipPrice(BigDecimal vipPrice) {
        this.vipPrice = vipPrice;
    }

    /**
     * 获取商品内容
     *
     * @return goods_content - 商品内容
     */
    public String getGoodsContent() {
        return goodsContent;
    }

    /**
     * 设置商品内容
     *
     * @param goodsContent 商品内容
     */
    public void setGoodsContent(String goodsContent) {
        this.goodsContent = goodsContent;
    }

    /**
     * 获取列表图片
     *
     * @return list_img - 列表图片
     */
    public String getListImg() {
        return listImg;
    }

    /**
     * 设置列表图片
     *
     * @param listImg 列表图片
     */
    public void setListImg(String listImg) {
        this.listImg = listImg;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", goodsId=").append(goodsId);
        sb.append(", classifyId=").append(classifyId);
        sb.append(", goodsName=").append(goodsName);
        sb.append(", goodsImg=").append(goodsImg);
        sb.append(", goodsLongimg=").append(goodsLongimg);
        sb.append(", goodsPrice=").append(goodsPrice);
        sb.append(", goodsType=").append(goodsType);
        sb.append(", linePrice=").append(linePrice);
        sb.append(", goodsMark=").append(goodsMark);
        sb.append(", status=").append(status);
        sb.append(", addType=").append(addType);
        sb.append(", shopId=").append(shopId);
        sb.append(", createBy=").append(createBy);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateBy=").append(updateBy);
        sb.append(", updateTime=").append(updateTime);
        sb.append(", delFalg=").append(delFalg);
        sb.append(", sort=").append(sort);
        sb.append(", groupPrice=").append(groupPrice);
        sb.append(", attributes=").append(attributes);
        sb.append(", mainCategory=").append(mainCategory);
        sb.append(", attributesName=").append(attributesName);
        sb.append(", reducePrice=").append(reducePrice);
        sb.append(", goodsVideo=").append(goodsVideo);
        sb.append(", proportion=").append(proportion);
        sb.append(", percent=").append(percent);
        sb.append(", buyPrice=").append(buyPrice);
        sb.append(", supplier=").append(supplier);
        sb.append(", limitNum=").append(limitNum);
        sb.append(", guarantee=").append(guarantee);
        sb.append(", top=").append(top);
        sb.append(", percentage=").append(percentage);
        sb.append(", supplierDesc=").append(supplierDesc);
        sb.append(", wholeGoodsId=").append(wholeGoodsId);
        sb.append(", vipPrice=").append(vipPrice);
        sb.append(", goodsContent=").append(goodsContent);
        sb.append(", listImg=").append(listImg);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}